package com.todo.sight.application.iface.frontend;

import com.todo.common.common.entity.response.BizPageResponse;
import com.todo.common.common.entity.response.BizResponse;
import com.todo.sight.application.iface.frontend.request.SearchSightPoiParam;
import com.todo.sight.application.iface.frontend.request.SearchSightSummaryParam;
import com.todo.sight.application.iface.frontend.response.SightInfoVO;
import com.todo.sight.application.iface.frontend.request.RecommendSightParam;
import com.todo.sight.application.iface.frontend.request.SearchSightPoiParam;
import com.todo.sight.application.iface.frontend.request.SearchSightSummaryParam;
import com.todo.sight.application.iface.frontend.response.SightInfoVO;
import com.todo.sight.application.iface.frontend.response.SightSummaryVO;

import java.util.List;

/**
 * @author azhebuxing
 * @date 2024/5/14 13:35
 * @description
 */
public interface SightPortalIface {

    /**
     * 根据关键词搜索景点列表
     *
     * @param param
     * @return
     */
    BizPageResponse<SightInfoVO> searchSightPOI(SearchSightPoiParam param);

    /**
     * 根据关键词搜索景点列表
     *
     * @param param
     * @return
     */
    BizPageResponse<SightSummaryVO> searchSightSummary(SearchSightSummaryParam param);

    /**
     * 根据城市获取热门景点列表(人工配置，默认一个城市最多20个数据，且热点城市存在)
     *
     * @param param
     * @return
     */
    BizResponse<List<SightSummaryVO>> hotSightListByCity(RecommendSightParam param);
}
